#ifndef KRUSKAL_H
#define KRUSKAL_H

#include "ListaAresta.h"
#include "Solucao.h"

#define MAX_STEINER 1000

/*Classe responsável por calcular o custo minimo da 
  arvore de amplitude minima a partir de um dado grafo*/
class Kruskal{
	private:
		NoVertice vertices[MAX_STEINER];
		ListaAresta *arestas;
		int arvore;
		int numAresta;
		int getArvore(int no);
		void uniao(int no1, int no2);
	public:
		Kruskal(Solucao *sol);
		double getSomaArestas();
		~Kruskal(){
			delete this->arestas;
		}
};

#endif

